'\" te
.\"  Copyright (c) 1996, Sun Microsystems, Inc.  All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH CSX_PARSE_CISTPL_SPCL 9F "Dec 20, 1996"
.SH NAME
csx_Parse_CISTPL_SPCL \- parse the Special Purpose tuple
.SH SYNOPSIS
.nf
#include <sys/pccard.h>



\fBint32_t\fR \fBcsx_Parse_CISTPL_SPCL\fR(\fBclient_handle_t\fR \fIch\fR, \fBtuple_t *\fR\fItu\fR,
    \fBcistpl_spcl_t *\fR\fIcsp\fR);
.fi

.SH INTERFACE LEVEL
illumos \fBDDI \fRSpecific (illumos \fBDDI) \fR
.SH PARAMETERS
.ne 2
.na
\fB\fIch\fR\fR
.ad
.RS 7n
Client handle returned from \fBcsx_RegisterClient\fR(9F).
.RE

.sp
.ne 2
.na
\fB\fItu\fR\fR
.ad
.RS 7n
Pointer to a \fBtuple_t\fR structure (see \fBtuple\fR(9S)) returned by a call
to \fBcsx_GetFirstTuple\fR(9F) or \fBcsx_GetNextTuple\fR(9F).
.RE

.sp
.ne 2
.na
\fB\fIcsp\fR\fR
.ad
.RS 7n
Pointer to a \fBcistpl_spcl_t\fR structure which contains the parsed
\fBCISTPL_SPCL\fR tuple information upon return from this function.
.RE

.SH DESCRIPTION
This function parses the Special Purpose tuple, \fBCISTPL_SPCL,\fR into a form
usable by \fBPC \fRCard drivers.
.sp
.LP
The \fBCISTPL_SPCL\fR tuple is identified by an identification field that is
assigned by \fBPCMCIA \fRor JEIDA. A sequence field allows a series of
\fBCISTPL_SPCL\fR tuples to be used when the data exceeds the size that can be
stored in a single tuple; the maximum data area of a series of
\fBCISTPL_SPCL\fR tuples is unlimited. Another field gives the number of bytes
in the data field in this tuple.
.SH STRUCTURE MEMBERS
The structure members of \fBcistpl_date_t\fR are:
.sp
.in +2
.nf
uint32_t    id;       /* tuple contents identification */
uint32_t    seq;      /* data sequence number */
uint32_t    bytes;    /* number of bytes following */
uchar_t     data[CIS_MAX_TUPLE_DATA_LEN];
.fi
.in -2

.sp
.LP
The fields are defined as follows:
.sp
.ne 2
.na
\fB\fBid\fR\fR
.ad
.RS 9n
This field contains a \fBPCMCIA \fRor \fBJEIDA \fRassigned value that
identifies this series of one or more \fBCISTPL_SPCL\fR tuples. These field
values are assigned by contacting either \fBPCMCIA \fRor \fBJEIDA\fR.
.RE

.sp
.ne 2
.na
\fB\fBseq\fR\fR
.ad
.RS 9n
This field contains a data sequence number. \fBCISTPL_SPCL_SEQ_END\fR is the
last tuple in sequence.
.RE

.sp
.ne 2
.na
\fB\fBbytes\fR\fR
.ad
.RS 9n
This field contains the number of data bytes in the
\fBdata[CIS_MAX_TUPLE_DATA_LEN]\fR.
.RE

.sp
.ne 2
.na
\fB\fBdata\fR\fR
.ad
.RS 9n
The data component of this tuple.
.RE

.SH RETURN VALUES
.ne 2
.na
\fB\fBCS_SUCCESS\fR\fR
.ad
.RS 27n
Successful operation.
.RE

.sp
.ne 2
.na
\fB\fBCS_BAD_HANDLE\fR\fR
.ad
.RS 27n
Client handle is invalid.
.RE

.sp
.ne 2
.na
\fB\fBCS_UNKNOWN_TUPLE\fR\fR
.ad
.RS 27n
Parser does not know how to parse tuple.
.RE

.sp
.ne 2
.na
\fB\fBCS_NO_CARD\fR\fR
.ad
.RS 27n
No \fBPC \fRCard in socket.
.RE

.sp
.ne 2
.na
\fB\fBCS_NO_CIS\fR\fR
.ad
.RS 27n
No Card Information Structure (CIS) on \fBPC \fRCard.
.RE

.sp
.ne 2
.na
\fB\fBCS_UNSUPPORTED_FUNCTION\fR\fR
.ad
.RS 27n
No \fBPCMCIA \fRhardware installed.
.RE

.SH CONTEXT
This function may be called from user or kernel context.
.SH SEE ALSO
.BR csx_GetFirstTuple (9F),
.BR csx_GetTupleData (9F),
.BR csx_RegisterClient (9F),
.BR csx_ValidateCIS (9F),
.BR tuple (9S)
.sp
.LP
\fIPC Card 95 Standard,\fR PCMCIA/JEIDA
